package org.jeecg.entity.meter;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.modules.system.entity.BaseEntity;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description: 仪表费用明细表
 * @Author: liurui
 * @Date:   2020-11-27
 * @Version: V1.0
 */
@Data
@TableName("meter_charge_info")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="meter_charge_info对象", description="仪表费用明细表")
public class MeterChangeInfo extends BaseEntity  {
    
	/**交易金额*/
	@Excel(name = "交易金额", width = 15)
    @ApiModelProperty(value = "交易金额")
	private BigDecimal chargeAmount;
	/**交易时间*/
	@Excel(name = "交易时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "交易时间")
	private Date chargeTime;
	/**交易类型（1：充值  2：扣费  3：退款）*/
	@Excel(name = "交易类型（1：充值  2：扣费  3：退款）", width = 15)
    @ApiModelProperty(value = "交易类型（1：充值  2：扣费  3：退款）")
	private Integer chargeType;
	/**id*/
	@TableId(type = IdType.ID_WORKER_STR)
    @ApiModelProperty(value = "id")
	private String id;
	/**仪表id*/
	@Excel(name = "仪表id", width = 15)
    @ApiModelProperty(value = "仪表id")
	private String meterId;
	/**订单表id*/
	@Excel(name = "订单表id", width = 15)
    @ApiModelProperty(value = "订单表id")
	private String meterOrderId;
	/**读数表id*/
	@Excel(name = "读数表id", width = 15)
    @ApiModelProperty(value = "读数表id")
	private String meterReadId;
	/**(支付状态  1：待支付  ，  2 ：已支付)*/
	@Excel(name = "(支付状态  1：待支付  ，  2 ：已支付)", width = 15)
    @ApiModelProperty(value = "(支付状态  1：待支付  ，  2 ：已支付)")
	private Integer paymentStatus;
	/**余额*/
	@Excel(name = "余额", width = 15)
    @ApiModelProperty(value = "余额")
	private String remainAmount;
	/**备注*/
	@Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
	private String remarks;
	/**(对电表充值状态  1：充值中 ，  2：已充值成功  ， 3：已充值失败)*/
	@Excel(name = "(对电表充值状态  1：充值中 ，  2：已充值成功  ， 3：已充值失败)", width = 15)
    @ApiModelProperty(value = "(对电表充值状态  1：充值中 ，  2：已充值成功  ， 3：已充值失败)")
	private Integer syncChargeStatus;
}
